﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace InstrumentCheck.Module
{
    [Serializable]
    public class ApplyForm
    {
        public Guid instanceID { set; get; }

        /// <summary>
        /// 表单的ID，自动增长的那一列
        /// </summary>
        public int FormID { set; get; }

        /// <summary>
        /// 表单单号
        /// </summary>
        public int FormNO { set; get; }

        /// <summary>
        /// 填表人
        /// </summary>
        public User Creater { set; get; }

        /// <summary>
        /// 申请人
        /// </summary>
        public User Applicant { set; get; }

        /// <summary>
        /// 申请日期
        /// </summary>
        public DateTime ApplyDate { set; get; }

        /// <summary>
        /// 表单申请状态，new或者change
        /// </summary>
        public FormType FormType { set; get; }

        /// <summary>
        /// 申请原因
        /// </summary>
        public string ApplyReason { set; get; }

        public Item Item { set; get; }

        /// <summary>
        /// 表单结案时间
        /// </summary>
        public DateTime ? CloseTime { set; get; }

        /// <summary>
        /// 表单状态（草稿、签核中、同意、不同意、撤销）
        /// </summary>
        public FormStatus FormStatus { set; get; }

        /// <summary>
        /// 表单的历史签核流程
        /// </summary>
        public List<FormRouting> FormRoutingHistory { set; get; }
    }
}
